The invention relates to performing operations in an environment recreated from system dump information.
Software in a computer system may be made up of many layers. The highest layer is usually referred to as the application layer, followed by lower layers that include the operating system, device drivers (which usually are part of the operating system), and other layers. In a system that is coupled to a network, various transport and network layers may also be present.
During execution of various software routines or modules in the several layers of a system, errors or faults may occur. Such faults may include addressing exceptions, arithmetic faults, and other system errors. A fault handling mechanism is needed to handle such faults so that a software routine or module or even the system can shut down gracefully. For example, clean-up operations may be performed by the fault handling mechanism, and may include the deletion of temporary files and freeing up of system resources. In many operating systems, exception handlers are provided to handle various types of faults (or exceptions). For example, exception handlers are provided in WINDOWS(copyright) operating systems and in UNIX operating systems.
An image of the system may also be dumped into one or more files in response to a fault. The dump information may then be used for subsequent analysis to determine the cause of the fault.
Various routines may be executed during live operation of a system that can access predetermined contextual information, which information may be displayed or used to perform diagnosis of problems in the system. However, when a system fault occurs, the run-time environment that existed during live operation of the system is no longer present. One possible technique to diagnose problems after dump information has been saved is to write routines that can specifically work with the dump information. However, this results in duplication of diagnosis routines, ones for a live run-time environment and ones for working with dump information. As a result, the time and labor required for creating such diagnosis routines are increased.
A need thus continues to exist for a more efficient method and apparatus of performing diagnosis of a system once a fault occurs and dump information has been stored.
In general, according to one embodiment, a method for use in a system includes recreating a run-time environment from dump information and performing a diagnosis or other operation in the recreated run-time environment.
Other features and embodiments will become apparent from the following description, from the drawings, and from the claims.